This invention relates to the field of telecommunications and telephone systems. More particularly, the present invention relates to a system and method for detecting three way calls using spread spectrum technology.
The proliferation of private telephone systems and the increasingly sophisticated services offered by such systems have created a need to monitor various events occurring on the telephone lines of the system. This is particularly true with telephone systems designed to provide users with only limited access to the public switched telephone network (PSTN). For example, prison telephone systems are tightly controlled to prevent inmates from contacting unauthorized parties or using the telephone system for illegal purposes. Prison telephone systems typically include some type of authorization mechanism to prevent inmates from dialing unauthorized numbers directly. However, once connected to an authorized number, the inmate may attempt to be connected to a third party at an unauthorized number using three way calling. These calls can only be prevented if the three way calling event is detected and intercepted.
A three way call is initiated when the non-local or remote party (the party outside the private telephone system) has a telephone equipped with three way calling services. The remote party usually depresses the hook switch on the remote telephone, generating a hook flash signal. This hook flash signal instructs the telephone central office to put the local party (the party within the private telephone system) on hold and provide a dial tone to the non-local party. On receipt of the dial tone, the non-local party dials the number of a third party to be added to the telephone conversation. Once a connection is established between the non-local party and the third party, the non-local party will typically depress the hook switch a second time, generating a second hook flash signal which instructs the telephone central office to complete the connection by bringing the local party back onto the active telephone line. Once the connection is completed, the local party and the third party can communicate through the connection made between the non-local party and the third party.
In order to detect three way calling events, prior art three way call detection systems have typically used one of two different methods. In a first method, some conventional three way call detection systems monitor the local telephone connection for the presence of a hook flash or associated central office signals which typically occur during a three way call. A hook flash signal will normally fall in a frequency band outside the ordinary frequency range of signal frequencies produced by the human voice. Prior art three way call detection systems which use this approach monitor signals on the local telephone line through a frequency filter which is designed to pass audio signals within the range of signal frequencies produced by the human voice. If the system detects signals falling within a frequency band outside the normal range of frequencies produced by the human voice, a three way call event is indicated.
U.S. Pat. No. 5,796,811, entitled xe2x80x9cThree Way Call Detection,xe2x80x9d discloses a system and method for detecting three way calls by monitoriong audio signals for features that distinguish ordinary human voice signals from audio signals produced by events associated with three way call events, such as hook flash clicks followed by an interval of silence.
However, this type of system which uses a frequency filtering method for detecting three way call events which may not be very accurate for a number of reasons. First, the frequency filtering method is designed to detect known frequencies of three way call events. However, the frequencies of hook flash signals or other signals generated by activating central office switches, are often modified by transmission through switches and along loaded lines such that the known frequency characteristics of a hook flash signal are substantially distorted by the time the hook flash signal reaches the three way call detection system. Second, some carriers condition telephone lines to suppress certain undesired signal frequencies. This conditioning tends to suppress the low frequency signal produced by a hook flash click. Finally, prison inmates have learned to mask hook flash clicks by yelling into the telephone receiver. If the inmate can make a sound that is louder than the hook flash click, the detection scheme can be defeated.
In a second method, a three way call detection system may be configured to measure changes in the parameters used by an echo-canceller in order to detect a three way call event. In an echo canceller, a replica of an echo is synthesized using coefficients which are determined by known echo characteristics. The synthesized echo is then used to cancel out the actual echo. If the synthesized echo is equal to the actual echo then the actual echo is essentially filtered out from the signal. However, when the actual echo changes, the synthesized echo will no longer cancel out the actual echo. Accordingly, the synthesized echo needs to be altered. In order to determine a three way calling event, this three way call detection system monitors the set of coefficients used to generate the synthesized echo over the duration of a telephone call. Significant changes in the set of coefficients, beyond a predetermined threshold, are used to signify a three way calling event.
One difficulty in this three way call detection system is the need for accurate detection of the echo or reflection. This system may not be able to accurately detect small echoes beyond the range of the echo canceller""s ability. Accordingly, very faint changes in the echo characteristics which may be caused by a third party calling event may not be detected and will have no effect on the set of coefficients used by the echo-canceller. Therefore, such a system may not be able to accurately detect a three way calling event.
Accordingly, there is a need to provide a reliable system and method for indicating the occurrence of three way call events without relying on a hook flash click detection scheme. Moreover, such a system and method should be able to accurately determine a three way calling event by detecting a change in the echo characteristics without relying on an echo-canceller. Finally, the system should be adapted to detect very faint echoes so that the system can more accurately detect any change in the echo characteristics which may be caused by a three way call event in order to properly indicate the occurrence of the three way calling event.
The present invention is directed to an advanced three way call detection system which measures delay times associated with multiple echoes of a reference signal transmitted over a two way call. A reference signal is initially transmitted over the two way call when the two way connection is first established and the echo characteristics of the two way connection are measured and recorded in an initial echo profile. The initial echo profile represents the number of and timing of each detected echo of the reference signal after transmission over the two way call.
In a preferred embodiment, the present invention continuously transmits the reference signal at various timing intervals during the telephone conversation and samples the incoming line to detect echoed versions of the reference signal in order to create subsequent echo profiles. Whether a three way calling event has occurred is determined by virtue of changes in the delay times and number of echoes in each subsequent echo profile when compared with the initial echo profile.
Because of delays imposed by the switching electronics used in modern telecommunications systems, far more delay is imposed by routing signals through the switches of the public switched telephone network than from actual propagation characteristics associated with transmission lines. Every time a new connection is established, additional routing through switches of the public switched telephone network is necessary, and additional delay times and multiple echoes result. This causes changes in the echo profile which is created each time the reference signal is transmitted over the public switched telephone network and the incoming signal is sampled. A histogram is created showing the echo profile over time and significant changes in the echo profile when compared to the initial echo profile can be used to detect a three way calling event.
In the present invention, different paths can be taken by the signal in each direction since the time delay for each detected echo is measured over the round trip relative from the time of transmission of reference signal. If there are no routing changes made during the conversation, the actual number of echoes detected and the timing delay associated with each detected echo will remain nearly constant. However, if a three way call is attempted, the terminal point from which the signal is reflected will change, since the signal is now also routed to a third party telephone. Accordingly, the number of echoes detected and the actual delay associated with those echoes will increase significantly do to the delay associated with the additional switches required to route the signal to the third party telephone through the public switched telephone network. Accordingly, by monitoring the incoming telephone line in order to detect echoed versions of the reference signal and recording a delay time associated with each detected echo, the system and method of the present invention can reliably detect a three way calling event.
In a preferred embodiment, direct sequencing and spread spectrum technology is used to locally generate a pseudo random noise sequence which appears as a wide band, low spectral density noise-like signal. This pseudo random noise sequence is used as the reference signal and injected into the analog voice signals transmitted over the local telephone line between the a local telephone and a remote telephone when a two way connection is first established. The system and method of the present invention measures and records the actual delay times associated with multiple echoes of the pseudo random noise sequence, wherein the delay times represent the amount of time associate with each echoed version of the pseudo random noise sequence as it propagates through all of the public switched telephone network switches and is reflected from various impedance mismatch points. An initial echo profile is created which shows the number of echoes recorded and the delay times associated with each echo.
In a preferred embodiment, the present invention continues to inject the reference signal into the two phone call over the duration of the conversation. Utilizing spread spectrum auto-correlation techniques, the present invention can accurately detect echoed versions of the reference signal and measuring the time delay associated with each detected echo of the reference signal over the duration of the phone call. Using a spread spectrum receiver/filter having auto-correlation techniques, echoed versions of the reference signal are accurately detected, filtered out from any white noise or distortion on the telephone line and the echo time for each detected echo is measured and recorded in a subsequent echo profile. If a significant change in the number of echoes or the echo delay time associated with each detected echo occurs in the subsequent profile when compared with the initial echo profile, the present invention generates a signal indicating that a three way call event has been detected.
In one embodiment, the present invention is a system including a transmitting module for transmitting a reference signal over a two way telephone connection when the two way connection is first established in order to determine initial echo characteristics of the two way telephone connection. A receiving module detects echoed versions of the reference signal and records each echoed version of the reference signal detected, along with an associated echo delay time, in an initial echo profile. At select intervals throughout the duration of the telephone call, the transmitting module will continuously transmit the reference signal over the telephone connection and the receiving module continues to detect echoed versions of the reference signal. This information is continuously recorded in subsequent echo profiles. The receiving module compares the echoed versions recorded in the echo profile with the echoed versions of the reference signal recorded in the initial echo profile. The system generates a histogram which tracks the number of echoes detected and the point in time where each echo is detected. Significant changes in the histogram indicate a three way calling event has been detected and the system will generate a signal alerting an operator.
In an another embodiment, the present invention is a method for detecting three way calling events by detecting an initial set of echo characteristics for a telephone connection over which the telephone call is made and storing this initial set of echo characteristics in an initial echo profile, continuously measuring the echo characteristics of the telephone connection at various times throughout the duration of the telephone call, and comparing the measured echo characteristics with those stored in the initial echo profile in order to detect a three way calling event.
In an another embodiment, the invention is implemented in a software program stored in a memory. The software program causes a processor to perform the various steps for detecting a three way calling event, wherein the software causes the processor to detect when a two-way call is first established and transmit a reference signal at the start of the telephone call, the processor will then detect echoed versions of the reference signal in order to determine the initial echo characteristics of the two-way connection and record these characteristics in an initial echo profile, the processor will then continue to inject the reference signal over the duration of the call and measure the incoming signals in order to detect recurring echoes. The processor will construct a histogram which shows the continuing echo characteristics of connection. This histogram is compared with the information in the initial echo profile in order to detect whether a three way calling event has occurred.